MinGW and boost on windows

2010/10/13
~ 阿亮 ~

安裝 MinGW and Boost 於 Windows 上之筆記

一、安裝 MinGW.

下載 MinGW-get  installer, 將下載的目錄 (比如 mingw-get-0.1-mingw32-alpha-4-bin/),拷貝到 C: 並改名為 C:\\MinGW,環境變數 PATH 加上 C:\MinGW\bin\,並到該目錄下執行

bin\mingw-get.exe install gcc g++ mingw32-make gdb

這個步驟是下載套件並安裝,我遇到會有 FAIL 的訊息,所以,多執行幾次,到沒有 Error 訊息。(PS: 這點蠻怪的)

 C:\MinGW\bin\mingw32-make  拷貝一份改成 C:\MinGW\bin\make

2010.10 註:另一個不錯的 TDM-MinGW  的版本,有提供 64/32bits 的版本。真的比官方的正常多了 XD

 

二、安裝 Boost,下載並目錄解壓縮至

C:\boost_1_44_0

執行下述

bjam --with-thread --with-graph link=static link=shared threading=single threading=multi toolset=gcc address-model=32 stage

–with-<package> 是除了基本 boost 之外,看要額外裝什麼。

address-model=32/64 在 64 bits 環境下,要編繹成 32 bits,用此參數

stage 是最後產生 library 的目錄

PS: Boost 用 MinGW with gcc4.6 會有問題,用 MinGW with gcc3.4 是 OK 的。

PS: 用 TDM-MinGW with gcc4.5.1 OK.

 

三、用 boost::thread 會遇到這兩個問題。問題一 及問題二 。 (for boost_1_44_0)

 

2010.10.18 補。用 TDM-MingGW 編繹 boost 仍有很多問題,比如 boost:thread  with 64bits.

2010.10.19 補。不論 mingw, tdm-mingw 都會造成我一些程式當掉,改用 cygwin 似乎就沒有該問題… (不解!)

 

For MSVC:

error C2143: syntax error : missing ';' before 'string'

檔頭的 class XXX {};  

最後分號不能漏掉!

 

error C2601: 'xxx' : local function definitions are illegal

將該檔另存 UTF8 with signature, 而且 Line ending 選 Windows (CR LF)

PS: stupid? but work! XD

 

Boost 可以選 BoostPro .

Code::Blocks  是還蠻好用的 IDE.



站內搜尋



本站其他服務

本站其他軟體



  • 下一班公車(nextBus)

    這個 app 只要開啟後,就根據定位幫你過濾出附近站牌的時刻表,以及提供相關公車預計到站的時間,方便您在很快時間內確定要坐的哪一班公車


  • 照片去背(PhotoEraser)

    一款方便移除背景的工具,產生透明背景圖可以存回原本相簿,也可分享到其他 App 使用.


  • 標案快訊

    讓你可以輕鬆追蹤含有您想要關注關鍵詞的任何採購標案,只要有最新的資訊,「標案快訊」即會推播通知給你.


  • 條碼掃描器(QRCode)

    支援 QRCode and Barcodes、可連續快速掃描、自動對焦、可打開手電筒供掃描時使用


  • 國道一路通(FreeWay)

    打開定位即實際地圖上繪製所在地中心附近的車況圖,可縮放地圖,不再是小小的縮小圖,快速了解高速公路的路況。


  • 下一班高鐵 (nextTHSR)

    這個 app 只要開啟後,就根據定位幫你過濾出最近高鐵站的時刻表,不用再按任何按鈕了,方便您在很快時間內確定要坐的哪一班高鐵